namespace OFX.Aggregator.Infrastructure
{
	#region #using Directives

	using System;

	#endregion

	[Serializable]
	public class InterpretationFailedException : Exception
	{
		private readonly IStatementInterpreter interpreter;

		public InterpretationFailedException(IStatementInterpreter interpreter, string message)
			: base(message)
		{
			this.interpreter = interpreter;
		}

		public InterpretationFailedException(IStatementInterpreter interpreter, string message, Exception innerException)
			: base(message, innerException)
		{
			this.interpreter = interpreter;
		}

		public IStatementInterpreter Interpreter
		{
			get { return this.interpreter; }
		}
	}
}